import java.util.Scanner;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 刘柄华
 * Date: 2022-06-14
 * Time: 17:09
 */
public class Test01 {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
            int n = sc.nextInt();
            int m = sc.nextInt();
            int k = sc.nextInt();
            int[][] map = new int[n+1][m+1];
            for(int i=0;i<k;i++){
                int x = sc.nextInt();
                int y = sc.nextInt();
                map[x][y] = 1;
            }
            double[][]dp = new double[n+1][m+1];
            dp[1][1] = 1.0;
            for(int i=1;i<=n;i++){
                for(int j=1;j<=m;j++){
                    if(map[i][j]==1){
                        dp[i][j]=0.0;
                        continue;
                    }
                    if(!(i==1&&j==1)){
                        dp[i][j] = dp[i-1][j]*(j==m?1.0:0.5) + dp[i][j-1]*(i==n?1.0:0.5);
                    }
                }
            }
            System.out.printf("%.2f\n",dp[n][m]);
        }
    }
}
